<?php

namespace Frieza\Modules\Position\Actions;

use Doraemon\cache\Queue;
use Encore\Admin\Actions\RowAction;
use Illuminate\Http\Request;
use Doraemon\model\Member;

class CancelUnauthDesigner extends RowAction
{
    public $name = '取消未认证设计师';
    const TOAST_ALERT = '您确定要取消该用户的未认证设计师身份,取消后该用户将变为普通用户身份？';

    public function handle($uid)
    {
        $data['type'] = Member::USER_COMMON;
        $rst = Member::updateUserInfo($uid,$data);
        if ($rst){
            //删除cahce里面的缓存数据
            Queue::insertQueue('User/delUserinfoCache', array(
                'uid' => $uid,
            ), Queue::QUEUE_COMMON);
            //删除token,让其强制退出,重新登录
            Queue::insertQueue('User/delTokenCache', array(
                'uid' => $uid,
            ), Queue::QUEUE_COMMON);
            return $this->response()->success('已取消该用户的未认证设计师身份')->refresh();
        }else{
            return $this->response()->error('取消未认证设计师身份失败,请稍后重试');
        }
    }

    public function retrieveModel(Request $request)
    {
        if (!$key = $request->get('_key')) {
            return false;
        }

        return $key;
    }

    public function dialog()
    {
        $this->confirm(self::TOAST_ALERT);
    }
}
